package adapter

import (
	"context"
	"errors"

	"gitee.com/liuxuezhan/ar-platform/pay-channel-packet/payClient/dto"
	"gitee.com/liuxuezhan/ar-platform/pay-channel-packet/payClient/interfaceP"
)

var ErrorNotFound = errors.New("Not found pay channel. ")

type DefaultAdapter struct {
}

func NewDefaultAdapter() *DefaultAdapter {
	return &DefaultAdapter{}
}

func (da *DefaultAdapter) AdapterPay(ctx context.Context, req dto.PayRequestDto) (dto.PayResponseDto, error) {
	return dto.PayResponseDto{}, nil
}

func (da *DefaultAdapter) AdapterPayNotify(req dto.PayNotifyReqDto) (dto.PayNotifyRespDto, error) {
	return dto.PayNotifyRespDto{}, nil
}

func (da *DefaultAdapter) AdapterWithdraw(ctx context.Context, req dto.WithdrawRequestDto) (dto.WithdrawResponseDto, error) {
	return dto.WithdrawResponseDto{}, nil
}

func (da *DefaultAdapter) AdapterWithdrawNotify(dto.WithdrawNotifyReqDto) (dto.WithdrawNotifyRespDto, error) {
	return dto.WithdrawNotifyRespDto{}, nil
}

func (da *DefaultAdapter) WithOption(opt ...interfaceP.Option) {
	for _, i := range opt {
		i(da)
	}
}

var _ interfaceP.AdapterInterface = (*DefaultAdapter)(nil)
